Soru & Cevap

Horizontal Listbox sorunu

15.11.2013 - 10:00

Merhabalar. Elimde bir yatay listbox var. Sorun listboxlara itemler ekleyince itemler birbiriyle yapışık çıkıyor. Böyle olmasını istemiyorum. Kodum şöyle;

 

<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">

            <ListBox x:Name="Lst" 

                     Width="480" 

                     ItemsSource="{Binding ElementName=AutoCompleteBox, Path=FilteredItemsSource}"

                     ScrollViewer.VerticalScrollBarVisibility="Disabled" 

                     ScrollViewer.HorizontalScrollBarVisibility="Visible" Margin="0,148,-24,480">

                <ListBox.ItemsPanel>

                    <ItemsPanelTemplate>

                        <StackPanel Orientation="Horizontal" />

                    </ItemsPanelTemplate>

                </ListBox.ItemsPanel>

            </ListBox>

        </Grid>

 

programın dosyası da aşağıda ekli

  

10 Görüntülenme

2 Cevap

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.

picture-472-1375079047.jpg
mehmet.altiparmak
16.11.2013 - 05:54

Merhaba Ömer,

ListBox'ın ItemTemplate özelliğini değiştirerek her bir list item'a istediğin görünüşü verebilirsin. Aşağıdaki gibi her bir ListItem içerisindeki TextBlock'a Margin vererek aralarında boşluk oluşturabilirsin örneğin. 

<ListBox x:Name="Lst" 
                     ItemsSource="{Binding ElementName=AutoCompleteBox, Path=FilteredItemsSource}"
                     ScrollViewer.VerticalScrollBarVisibility="Disabled" 
                     ScrollViewer.HorizontalScrollBarVisibility="Visible" Margin="0,65,0,497" RenderTransformOrigin="0.5,0.5">
                <ListBox.ItemsPanel>
                    <ItemsPanelTemplate>
                        <StackPanel Orientation="Horizontal" />
                    </ItemsPanelTemplate>
                </ListBox.ItemsPanel>
                <ListBox.ItemTemplate>
                    <DataTemplate>
                        <TextBlock Text="{Binding}" Margin="10" />                        
                    </DataTemplate>                    
                </ListBox.ItemTemplate>

</ListBox>

 

picture-1324-1382975689.jpg
fevziyilmaz
16.11.2013 - 04:01

<ListBox.ItemsPanel>

                    <ItemsPanelTemplate>

                        <StackPanel Orientation="Horizontal" />

                    </ItemsPanelTemplate>

                </ListBox.ItemsPanel>

 

bu kod blogu içinde StackPanel kullanmak yerine Grid kullanmayı deneyebilirsin . Stackpanel sıkıştırmış .